CHANGE @W-22462048@ Update Node dependencies across all packages for monthly release - #487
Conversation
…monthly release Dependency bumps (root + engine packages): - semver 7.8.4->7.8.5, @eslint/js & eslint 9.39.4->9.39.5, typescript-eslint (+plugin/parser) 8.61.1->8.64.0, eslint-plugin-jest 29.15.2->29.15.4, globals 17.6.0->17.7.0, unzipper 0.12.3->0.12.5, csv-stringify 6.8.0->6.8.1, js-yaml 4.2.0->4.3.0 Start-of-cycle SNAPSHOT bumps (first change since last release) + engine-api pin cascade, mirroring prior dep-update commits: - engine-api 0.39.0 -> 0.40.0-SNAPSHOT (pin cascaded to all 10 dependants) - eslint-engine 0.44.0 -> 0.45.0-SNAPSHOT - eslint8-engine 0.16.0 -> 0.17.0-SNAPSHOT - regex-engine 0.37.0 -> 0.38.0-SNAPSHOT - retirejs-engine 0.36.0 -> 0.37.0-SNAPSHOT - sfge-engine 0.22.0 -> 0.23.0-SNAPSHOT Goldfile/mapping regeneration: - eslint-plugin-jest 29.16.0 changed rule doc URLs: regenerated rules_OnlyLwcBaseConfig goldfile - typescript-eslint 8.64.0 deprecated @typescript-eslint/no-loop-func and @typescript-eslint/no-restricted-imports: removed from RULE_MAPPINGS and regenerated TypeScript goldfile (engine now surfaces base equivalents) Compatibility hold: - Held @salesforce/core at ^8.31.2: 8.32.x pulls undici 8.x which needs a Node 22+ API (webidl.util.markAsUncloneable), breaking the Node 20 minimum - Left eslint8-engine external deps frozen (eslint 8.57.1, @eslint/js 8.57.1, typescript 5.8.3)
|
Git2Gus App is installed but the |
…isory websocket-driver <=0.7.4 (transitive via @salesforce/core -> faye -> faye-websocket) has two critical advisories (GHSA-mp7j-qc5w-4988, GHSA-xv26-6w52-cph6). faye-websocket only requires websocket-driver >=0.5.1, so refreshing the locked transitive to the patched 0.7.5 clears the critical without bumping @salesforce/core (kept at 8.31.2 to preserve the Node 20 minimum by keeping undici 8.x out of the tree). Lockfile-only change. npm audit: 0 critical (was 1); highs unchanged and accepted for this release.
aruntyagiTutu
left a comment
There was a problem hiding this comment.
Solid, well-justified release-prep PR:
- All deps bumped are minor/patch only, consistent with the monthly-release cadence policy.
- Good compatibility discipline: explicitly holding
@salesforce/coreat^8.31.2to keepundicioff Node 22-only APIs and preserve the Node 20 customer minimum — exactly the kind of reasoning that should accompany a version hold. - The websocket-driver critical-advisory fix is a clean, scoped lockfile-only bump that resolves the CVE without touching the pinned
@salesforce/coreversion. - Removing the two rules deprecated by
typescript-eslint8.64.0 (no-loop-func,no-restricted-imports) fromRULE_MAPPINGSand regenerating the goldfiles is the right call since the engine now surfaces the base-rule equivalents. - Tests green (1557/0/11 skipped), Java build green.
Two non-blocking notes:
- The PR description states
typescript-eslint8.61.1 → 8.64.0, but the lockfile diff shows the@typescript-eslint/*sub-packages moving 8.62.0 → 8.65.0 — worth double-checking the description reflects the final pushed versions before merge. - Since two TS rules are dropped from
RULE_MAPPINGS, it might be worth a release-note mention that customers relying onno-loop-func/no-restricted-importswill now get the upstream base-rule equivalents instead — just so it's not a silent behavior change from the user's perspective.
Approving — nothing here blocks merge.
PMD 7.25.0 → 7.26.0 scan comparison — misalignment analysis & no-regression confirmationI ran the full scan-comparison (baseline 7.25.0 vs. new 7.26.0, TL;DRNo regressions. The comparison surfaces 13,206 "mismatches", but 13,171 of them (99.7%) are cosmetic — a 1-based column re-basing of ECMAScript/JavaScript violation positions in 7.26.0, plus a handful of index-pairing artifacts that fall out of it. Same rule, same file, same line, same message — only the reported The only 35 real behavioral changes are all intended and documented in the PMD 7.26.0 changelog, and the net violation count moves by just +20 across ~172,000 violations.
Scope
Full classification of all 13,206 mismatches
The 35 real changes — all map to the PMD 7.26.0 changelog1.
Distribution: 2. 3. All three are improvements (one new rule + two false-positive fixes). None is a lost/changed detection of existing behavior. Why the 13,171 cosmetic diffs happenEvery cosmetic mismatch is a JavaScript/ECMAScript violation whose position moved by exactly +1 column — everything else (rule, file, line, message, severity, tags) is byte-for-byte identical:
Conclusion✅ Safe to proceed with the 7.26.0 upgrade.
Full per-repo reports and raw result JSON are attached ( |
Summary
Monthly-release Node dependency refresh across the core monorepo, plus the start-of-cycle SNAPSHOT version bumps and two goldfile/mapping regenerations driven by upstream changes.
Dependency bumps (root + engine packages)
semver7.8.4 → 7.8.5@eslint/js&eslint9.39.4 → 9.39.5typescript-eslint(+@typescript-eslint/eslint-plugin,parser) 8.61.1 → 8.64.0eslint-plugin-jest29.15.2 → 29.15.4 (resolves 29.16.0)globals17.6.0 → 17.7.0unzipper0.12.3 → 0.12.5csv-stringify6.8.0 → 6.8.1js-yaml4.2.0 → 4.3.0Start-of-cycle SNAPSHOT bumps + engine-api pin cascade
First change since last release, so released packages advance one minor to
-SNAPSHOT(mirrors prior dep-update commits #459 / #465):engine-api0.39.0 → 0.40.0-SNAPSHOT (pin cascaded to all 10 dependants)eslint-engine0.44.0 → 0.45.0-SNAPSHOTeslint8-engine0.16.0 → 0.17.0-SNAPSHOTregex-engine0.37.0 → 0.38.0-SNAPSHOTretirejs-engine0.36.0 → 0.37.0-SNAPSHOTsfge-engine0.22.0 → 0.23.0-SNAPSHOTGoldfile / rule-mapping regeneration
rules_OnlyLwcBaseConfiggoldfile.@typescript-eslint/no-loop-funcand@typescript-eslint/no-restricted-imports→ removed fromRULE_MAPPINGSand regenerated the TypeScript goldfile (engine now surfaces the base-rule equivalents).Compatibility hold (Node 20 minimum)
@salesforce/coreat^8.31.2: 8.32.x pullsundici8.x, which calls a Node 22+ API (webidl.util.markAsUncloneable) and breaks the Node 20 customer minimum.eslint8-engineexternal deps frozen (eslint8.57.1,@eslint/js8.57.1,typescript5.8.3).Testing
BUILD SUCCESSFUL.